// 包声明：将Student类放在com.itheima.thisdemo包下，用于组织和管理代码
package com.itheima.thisdemo;

// 定义公共的Student类，public表示这个类可以被其他包的类访问
public class Student {
    // 成员变量：定义一个String类型的name变量，用于存储学生姓名
    // 成员变量属于对象，每个Student对象都有自己独立的name值
    String name;
    
    // 定义公共的print方法，没有参数，没有返回值
    public void print(){
        // this关键字：在方法内部使用，表示当前调用该方法的对象
        // 哪个对象调用print方法，this就指向哪个对象
        System.out.println(this);  // 打印当前对象的引用地址
        System.out.println(this.name);  // 通过this访问当前对象的name成员变量
    }

    // 定义公共的printHobby方法，接收一个String类型的name参数
    // 这里方法参数名与成员变量名相同，会发生变量名冲突
    public void printHobby(String name){
        // 使用this.name访问的是对象的成员变量name
        // 直接使用name访问的是方法的局部变量name
        // 这是this关键字的重要用法：区分同名的成员变量和局部变量
        System.out.println(this.name  + "喜欢" + name);
    }
}
